<?php 
 $this->widget('zii.widgets.CDetailView', array(
	 'data'=>$modelBeneficiario,
         'htmlOptions' => array('class' =>'table table-bordered'),
	 'attributes'=>array(		
		'MiPersona.apellido',
		'MiPersona.nombre',		
		'MiPersona.TipoDocumento.descripcion',
		'MiPersona.numero_documento',
                'Sexo',
		'MiPersona.fecha_nacimiento',		
		'clavebeneficiario',
                array('label'=>'Categoria Inscripcion','value'=>$modelBeneficiario->MiCategoriaBeneficiario->descripcion),		
		array('label'=>'Categoria a la fecha','value'=>$modelBeneficiario->DevolverGrupoEtareo()),
             ),
    ));
?>

<br />


<div class="form">
<?php $form=$this->beginWidget('CActiveForm', array(
	'id'=>'prestaciones-brindadas-form',
	'enableAjaxValidation'=>false,         
        )); ?>
    
        <?php
        
        //si existe el flash de carga, fue exitosa la carga o no mostramos el cartel correspondiente
	 if(Yii::app()->user->hasFlash('resultado_carga')): ?> 
                <div class="alert alert-success" id="cartell">
                    <?php echo Yii::app()->user->getFlash('resultado_carga',array('class'=>'succes')); ?>
                </div> 
        <?php endif; ?>
  
        <?php echo $form->errorSummary($model); ?>
    
        <?php   $model->id_beneficiario = $modelBeneficiario->id_persona; ?>
                <input type="hidden" name="grp_etareo"  id="grp_etareo" value="">        
                <input type="hidden" name="grp_etareo_actual"  id="grp_etareo_actual" value="<?php echo $modelBeneficiario->DevolverGrupoEtareo(); ?>">
                <input type="hidden" name="idbenef"    id="idbenef" value="<?php echo $modelBeneficiario->id_persona;?>">
                <input type="hidden" name="embarazo"    id="embarazo" value="-1">
                <input type="hidden" name="nomenclador" id="nomenclador" value="-1">
        <input type="hidden" name="mascara" id="mascara" value="-1">
        
        
         <div class="col-md-12 form-group">
             <div class="col-md-6"> 
		<?php echo $form->labelEx($model,'fecha_prestacion'); ?>
                <?php
                 $this->widget('zii.widgets.jui.CJuiDatePicker', array(
                    'model'=>$model, 
                    'id'=>'fecha_prestacion',
                    'attribute'=>'fecha_prestacion',
                    'value'=>$model->fecha_prestacion,
                    'language' => 'es',                    
                    'htmlOptions' => array('readonly'=>"readonly",
				'class'=>'span4',	
                                      'style'=>'
                                        background:#ffbf00;                                       
                                        '),
                    'options'=>array(                        
                    'autoSize'=>true,
                    'defaultDate'=>$model->fecha_prestacion,
                    'dateFormat'=>'dd-mm-yy',
                    /*'buttonImage'=>Yii::app()->baseUrl.'/images/calendar.png',*/
                    'buttonImageOnly'=>false,
                    'buttonText'=>'Fecha',                    
                    'selectOtherMonths'=>true,
                    'showAnim'=>'slide',
                    'showButtonPanel'=>true,
                    'showOn'=>'button',
                    'showOtherMonths'=>true,
                    'changeMonth' => 'true',
                    'changeYear' => 'true',
                    'maxDate'=>'date("Y-m-d")', //fecha maxima                   
            ),
            )); ?>		
		<?php echo $form->error($model,'fecha_prestacion'); ?>
                 </div>
                 <div class="col-md-5">
                     <div id="categoriaactual"></div> 
                 </div>
	</div>
        
        
       <div class="col-md-12 form-group">
        <?php   
        $array_tipoPrestacion = array();
		echo CHtml::label('Prestacion','');     
                echo CHtml::dropDownList('prestacion','',$array_tipoPrestacion,
                         array('empty' => '(Esperando Seleccionar Fecha)','class'=>'form-control','id'=>'idprestacion','disabled'=>'disabled',
                         'ajax' => array('type'=>'POST',
                                         'url' => CController::createUrl('prestaciones/cargarMisPrestaciones'),                                       
                                         'success'=>'js:function(data){ 
                                             $("#pato").html(""); $("#pato").attr("disabled",true); $("#objetoprestacion").html(data); $("#objetoprestacion").attr(\'disabled\',false);}',
                                     )));
                 
                
        ?>
       </div>
        <div class="col-md-12 form-group">
        <?php     
                
                 echo CHtml::label('Objeto Prestacion','');
                 echo CHtml::dropDownList('objetoprestacion','',array(),
                         array( 'empty' => '(Seleccione Tipo Prestacion)','class'=>'form-control','id'=>'objetoprestacion','disabled'=>'disabled',
                                'ajax' => array('type'=>'POST',
                                      'url' => CController::createUrl('prestaciones/cargarMisPatologiasPrestaciones'), //
                                      'success'=>'js:function(data){armarTablaPatologias(data);}',
                                      'dataType'=>'json',    
                                       // el div que se va a actualizar
                                     )
                               ));
                 
              ?>   
        </div>  
       <div class="col-md-12 form-group">
        <?php   
                 echo CHtml::label('Patologia','');
                 echo CHtml::dropDownList('patologia','',array(),
                         array( 'empty' => '(Seleccione Objeto Prestacion)','class'=>'form-control','id'=>'pato','disabled'=>'disabled',
                                'ajax' => array('type'=>'POST',
                                       'url' => CController::createUrl('prestacionesPermitidas/buscarTrazadoras'), 
                                       'dataType'=>'json',
                                       'success'=>' function(data) { procesarPedido(data);}',
                                       // el div que se va a actualizar
                                     )
                               ));
                  
                 
                 ?>		
        
       </div>
	
	<div class="col-md-12 form-group">
		<?php echo $form->labelEx($model,'id_efector'); ?>
            
		<?php  
                  $efectores = Efectores::model()->findAll();
		  $listEfectores = CHtml::listData($efectores,'id', 'cuie');    
                 
                  ?>
		<?php echo $form->DropDownList($model,'id_efector',$listEfectores,array('class'=>'form-control')); ?>
	
   	<?php echo $form->error($model,'id_efector'); ?>
	</div>

	
	<div class="col-md-12 form-group buttons" id="trznino">
		<?php echo CHtml::submitButton($model->isNewRecord ? 'Create' : 'Save',array('class'=>'btn btn-success col-md-4','id'=>'bot-aceptar')); ?>
            
                <?php echo CHtml::link('CARGAR TRAZADORA NIñO', "",  
                            array(
                                'class'=>'btn btn-success col-md-4',
                                'id'=>'bot-trazadoras-nino',
                                'onclick'=>"{cargarTrazadoraNino(); $('#formCargaTrazadoras').dialog('open');}")); ?>
            
            
               <?php echo CHtml::link('CARGAR TRAZADORA EMBARAZO', "",  
                            array(
                                'class'=>'btn btn-success col-md-4',
                                'id'=>'bot-trazadoras-embarazo',
                                'onclick'=>"{cargarTrazadoraEmbarazo(); $('#formCargaTrazadoras').dialog('open');}")); ?>


        </div> 
        
       
        
        <div>
            <div class="col-md-12 form-group buttons">
                <?php echo CHtml::link('MIS PRESTACIONES EFECTUADAS', "",  
                            array(
                                'class'=>'btn btn-success',
                                'id'=>'bot-misprestaciones',
                                'onclick'=>"{mostrarMisPrestaciones();}")); ?>     
            </div>
      
            
             <div id="grillaprestaciones">
              <?php $this->widget('zii.widgets.grid.CGridView', array(
                    'id'=>'beneficiarios-grid111',
                    'itemsCssClass'=>'table table-hover table-striped table-bordered table-condensed', 
                         'rowCssClassExpression'=>'($data->debitado==1) ? "prestacionDebitada" : "prestacionAceptada"', 
                    'dataProvider'=>$dataProviderPrestaciones,
                 
                    'columns'=>array(                         
                            array('header'=>'Nro Prestacion','name'=>'id','value'=>'$data->id', 'htmlOptions'=>array('width'=>'10%'),'cssClassExpression'=>'($data->debitado==1) ? "prestacionDebitada" : "prestacionAceptada"'),
                            array('header'=>'PRESTACION','name'=>'id_prestaciontomada','value'=>'$data->prestacionRealizada','cssClassExpression'=>'($data->debitado==1) ? "prestacionDebitada" : "prestacionAceptada"'),
                            array('header'=>'DIAGNOSTICO','name'=>'id_patologia','value'=>'$data->prestacionRealizadaPatologiaComun','cssClassExpression'=>'($data->debitado==1) ? "prestacionDebitada" : "prestacionAceptada"'),
                            array('header'=>'FECHA','name'=>'fecha_prestacion','value'=>'$data->fecha_prestacion','cssClassExpression'=>'($data->debitado==1) ? "prestacionDebitada" : "prestacionAceptada"'),
                            array('header'=>'MONTO','name'=>'monto','value'=>'$data->monto','cssClassExpression'=>'($data->debitado==1) ? "prestacionDebitada" : "prestacionAceptada"'),
                            array('header'=>'FACTURA','name'=>'id_factura','value'=>'($data->id_factura>0)?$data->id_factura:"S/N"','cssClassExpression'=>'($data->debitado==1) ? "prestacionDebitada" : "prestacionAceptada"'),
                            array('header'=>'DEBITO','name'=>'debitado','value'=>'($data->debitado==1)?"SI":"NO"','cssClassExpression'=>'($data->debitado==1) ? "prestacionDebitada" : "prestacionAceptada"'),
                            array('header'=>'MONTO-DEBITO','name'=>'monto_debitado','value'=>'$data->monto_debitado','cssClassExpression'=>'($data->debitado==1) ? "prestacionDebitada" : "prestacionAceptada"'),
                            array(
                                'header'=>'DEBITAR',
                                'name'  => 'debito',
                                'type'  => 'raw',
                                'value' => 'CHtml::link(\'hijas\',"", array(\'class\'=>\'btn btn-primary\',\'style\'=>\'cursor: pointer;\',\'onclick\'=>"{debitar($data->id); $(\'#cajas\').dialog(\'open\');}"))'
       
                             ), 
                       ),
                    ));  
              ?>  
            </div> 
          </div>
        
          
                
                

<?php $this->endWidget(); ?> 
        

        <?php
           //dialog debitos
        $this->beginWidget( 'zii.widgets.jui.CJuiDialog', array(
        'id' => 'cajas',
        'options' => array(
            'title' => 'Dialog',
            'autoOpen' => false,
            'modal' => true,
            'width'=>'450',
            'height'=>'300',
            'resizable' => false,
        ),
        )); ?>
                <div class="divForForm"></div>
        <?php $this->endWidget(); ?>         
        
        
        <?php             
            $this->beginWidget('zii.widgets.jui.CJuiDialog', array( 
                'id'=>'formCargaTrazadoras',
                'options'=>array(
                    'title'=>'CARGA DE TRAZADORAS',
                    'autoOpen'=>false,
                    'modal'=>true,
                    'width'=>'450',
                    'height'=>'600',
                ),
            ));?>                
                <div class="divForForm"></div> 
       <?php $this->endWidget();?>
  
  
  

</div><!-- form -->






<style type="text/css">   
    #bot-trazadoras-nino{
       display: none; 
    }
    #bot-trazadoras-embarazo{
       display: none; 
    }    
    
   
   #grillaprestaciones{
       /*display: none; */
    }   
    #beneficiarios-grid111   td.prestacionDebitada,  #beneficiarios-grid111   th.prestacionDebitada{
         background-color: rgba(125,100,100,0.56);
         font-size: 0.8em !important;
    }  
    #beneficiarios-grid111 td.prestacionAceptada, #beneficiarios-grid111 th.prestacionAceptada{
        background-color:  rgba(119, 194, 143, 0.56);
        font-size: 0.8em !important;
    }  
 
</style>    

<script type="text/javascript">
     $('#bot-aceptar').attr("disabled",true);
     
     
     /*
      * Cada vez que es modificada la fecha de prestacion, se llama a la funcion volcarNomenclador;
      * y se activa el combobox de prestaicones para permitir seleccionar el tipo de prestacion a efectutar.
      *       
      */
      $('#fecha_prestacion').change(function(){ 
          volcarNomenclador();
          $("#idprestacion").attr('disabled',false);
      }); //FIN DEL CHANGUE fecha_prestacion
      
     
      
      
   /*
    * Volcar Nomenclador, funcion que llama via ajax, a la funcion volcarnomenclador en el controlador prestaiconBrindada,
    * a partir del cual, segun la fecha de prestacion, nos busca el nomenclador activo, y rellena un combo con las prestaciones
    * asociadas y permitidas a ese nomenclador.
    * 
    * OK
    */
   function volcarNomenclador(){ 
         <?php echo CHtml::ajax(array(
            'url'=>array('prestacionBrindada/volcarNomenclador'),
            'data'=> "js:$(this).serialize()+'&idbenef='+$('#idbenef').val()+'&fechaprestacion='+$('#fecha_prestacion').val()",
            'type'=>'post',
            'dataType'=>'json',
            'success'=>"function(data)
                     {     alert('embarazo es : ' + data.embarazo);
                       $('#idprestacion').html(data.opciones);
                       $('#embarazo').val(data.embarazo);
                       $('#grp_etareo').val(data.categoria);
                       $('#nomen').val(data.nomenclador);
                       $('#categoriaactual').html('Categoria fecha prestacion: ' + data.grupo);                       
                       $('#pato').html('');             
                       $('#pato').attr('disabled',true);                      
                       $('#objetoprestacion').html('');    
                       $('#objetoprestacion').attr('disabled',true);                        
                     } ",
            ))?>;  
      return false;
   }
   
   
   function armarTablaPatologias(data)
    {  var  opc;    
       
          $("#pato").html('');        
          
          $.each(data, function(k,v){   
                 opc = "";
                 opc = "<option value='" + v.id +"'>" + v.codigo + " - " + v.descripcion +"</option>";
                 $("#pato").append(opc); 
                
       });
      $("#pato").attr('disabled',false); 
     } //fin de la funcion armarTabla 
   
     
   /*
    *
    *  Funcion que es llamada al seleccionar la patologia, para verificar si la prestacion seleccionda 
    * (prestacion, objeto de la prestacion, patologia) no requiere de la carga de trazadora. */ 
   function procesarPedido(data){
       alert("asdas");
       if (data.resultado == "1"){
          alert("111");
          $('#bot-aceptar').attr("disabled",true);         
          $('#bot-trazadoras-nino').css("display","inline");
       }
       else
       if (data.resultado == "2"){
            alert("222");
          $('#bot-aceptar').attr("disabled",true);
          $('#bot-trazadoras-embarazo').css("display","inline");        
       }
       else
       {     alert("333");
           $('#bot-aceptar').attr("disabled",false);
           $('#bot-trazadoras').css("display","none");
           $('#bot-trazadoras-embarazo').css("display","none");
       }
   } //FIN DEL procesarPedido
   
   
   
   function cargarTrazadoraNino(){
       /*
        *  Llamada para la Carga de Trazadora de nino
        *
        */
      alert("entrando en trazadora nino");
      
      <?php echo CHtml::ajax(array(
            'url'=>array('nino/cargarTrazadora'),
            'data'=> "js:$(this).serialize()+'&idbenef='+$('#idbenef').val()+'&anios='+$('#edad_anios_benef').val()+'&meses='+$('#edad_meses_benef').val()+'&fechaprestacion='+$('#fecha_prestacion').val()",
            'type'=>'post',
            'dataType'=>'json',
            'success'=>"function(data)
            {
                if (data.status == 'formulario')
                {
                    $('#formCargaTrazadoras div.divForForm').html(data.div);                          
                    $('#formCargaTrazadoras div.divForForm form').submit(cargarTrazadoraNino);
                }
                else
                {
                    $('#formCargaTrazadoras div.divForForm').html(data.div); 
                     $('#bot-aceptar').attr('disabled',false);
                    $('#bot-trazadoras').css('display','none'); 
                    $('#formCargaTrazadoras').dialog('close');
                } 
            } ",
            ))?>;
       
      return false;
   }
   
   
   
   function cargarTrazadorasEmbarazo(){
       /*
       *Llamada para la Carga de Trazadora de nino
       *
       */
      <?php echo CHtml::ajax(array(
            'url'=>array('embarazo/cargarTrazadora'),
            'data'=> "js:$(this).serialize()+'&idbenef='+$('#idbenef').val()+'&grpetareo='+$('#grpetareo').val()+'&fechaprestacion='+$('#fecha_prestacion').val()",
            'type'=>'post',
            'dataType'=>'json',
            'success'=>"function(data)
            {
                if (data.status == 'formulario')
                {
                    $('#formCargaTrazadoras div.divForForm').html(data.div);                          
                    $('#formCargaTrazadoras div.divForForm form').submit(cargarTrazadorasEmbarazo);
                }
                else
                {
                     $('#formCargaTrazadoras div.divForForm').html(data.div); 
                     $('#formCargaTrazadoras').dialog('close');
                     $('#bot-aceptar').attr('disabled',false);
                     $('#bot-trazadoras-embarazo').css('display','none');                   
                    
                }
 
            } ",
            ))?>; 
       
      return false;
   }
       
    function mostrarMisPrestaciones(){  
        if( $('#grillaprestaciones').css("display") == "none") {
          $('#grillaprestaciones').css("display","inline");}
       else{
          $('#grillaprestaciones').css("display","none");}
           
    }

   /* Funcion especifica para debitar a prestacion. 
    *
    * Se encarga de procesar la peticion del usuario y segun sea correspondiente muestra en una
    * primera etapa el formulario de carga de debitos sino procesa el pedido lo nsertara a tyravez< del
    * controlador; y si esta todo OK cierra la ventana modal.  
    *
    **/
   function debitar(id){       
         $("#mascara").val(id); 
         alert(id);
         alert($("#mascara").html());
       
       <?php echo CHtml::ajax(array(
            'url'=>array('prestacionBrindada/debitar'),
            'data'=> "js:$(this).serialize()+'&id='+$('#mascara').val()",
            'type'=>'post',
            'dataType'=>'json',
            'success'=>"function(data)
            {
                if (data.status == 'formulario')
                {
                    $('#cajas div.divForForm').html(data.div);                          
                    $('#cajas div.divForForm form').submit(debitar);
                }
                else
                {
                    $('#cajas div.divForForm').html(data.div); 
                     $('#bot-aceptar').attr('disabled',false);
                    $('#bot-trazadoras').css('display','none'); 
                    $('#cajas').dialog('close');
                    $.fn.yiiGridView.update('beneficiarios-grid111');                     

                    } 
            } ",
            ))?>;
                    
                    return false;
   }    
    </script>
